//: version "1.6i" module main; //: root_module supply0 w0; //: /sn:0 {0}(402,149)(402,89)(337,89){1} //: {2}(333,89)(297,89){3} //: {4}(295,87)(295,15)(326,15)(326,25){5} //: {6}(293,89)(264,89){7} //: {8}(260,89)(191,89)(191,149){9} //: {10}(262,91)(262,149){11} //: {12}(335,91)(335,149){13} wire w6; //: /sn:0 /dp:1 {0}(332,296)(332,306)(322,306)(322,277)(310,277)(310,287){1} wire w7; //: /sn:0 /dp:1 {0}(394,397)(380,397)(380,381)(330,381){1} wire w14; //: /sn:0 /dp:1 {0}(394,402)(366,402)(366,432)(356,432){1} wire w16; //: /sn:0 {0}(261,388)(216,388)(216,314){1} //: {2}(218,312)(279,312)(279,294){3} //: {4}(216,310)(216,262){5} //: {6}(218,260)(227,260)(227,247){7} //: {8}(216,258)(216,162){9} //: {10}(218,160)(219,160)(219,101)(475,101)(475,55){11} //: {12}(214,160)(202,160){13} wire w19; //: /sn:0 /dp:1 {0}(335,434)(326,434)(326,435)(318,435){1} wire w15; //: /sn:0 {0}(62,211)(62,233)(186,233)(186,208){1} //: {2}(188,206)(255,206){3} //: {4}(259,206)(328,206){5} //: {6}(332,206)(397,206)(397,181){7} //: {8}(330,204)(330,181){9} //: {10}(257,204)(257,181){11} //: {12}(186,204)(186,181){13} wire w4; //: /sn:0 /dp:1 {0}(307,259)(307,265)(335,265)(335,275){1} wire D1; //: /sn:0 {0}(241,165)(230,165)(230,226){1} wire w3; //: /sn:0 {0}(-51,237)(29,237)(29,198)(39,198){1} wire w21; //: /sn:0 {0}(273,170)(281,170)(281,217)(257,217)(257,322)(312,322)(312,308){1} wire w1; //: /sn:0 {0}(86,75)(179,75){1} //: {2}(183,75)(250,75){3} //: {4}(254,75)(323,75){5} //: {6}(327,75)(392,75)(392,149){7} //: {8}(325,77)(325,149){9} //: {10}(252,77)(252,149){11} //: {12}(181,77)(181,149){13} wire w8; //: /sn:0 {0}(413,170)(423,170)(423,240)(398,240)(398,361)(299,361)(299,378)(309,378){1} wire w22; //: /sn:0 {0}(415,400)(425,400)(425,326)(375,326)(375,165)(381,165){1} wire w17; //: /sn:0 {0}(202,170)(223,170)(223,201)(156,201){1} //: {2}(154,199)(154,165)(170,165){3} //: {4}(154,203)(154,329)(307,329)(307,308){5} wire Q3; //: /sn:0 /dp:1 {0}(413,160)(428,160){1} //: {2}(432,160)(554,160)(554,56){3} //: {4}(430,162)(430,414)(325,414)(325,429)(335,429){5} wire w11; //: /sn:0 /dp:1 {0}(309,383)(298,383){1} //: {2}(294,383)(282,383){3} //: {4}(296,385)(296,435)(302,435){5} wire w12; //: /sn:0 /dp:1 {0}(52,182)(52,166)(-51,166){1} wire w2; //: /sn:0 /dp:1 {0}(302,259)(302,262)(279,262)(279,273){1} wire w10; //: /sn:0 {0}(-5,110)(72,110)(72,182){1} wire w27; //: /sn:0 {0}(284,294)(284,337)(355,337)(355,170)(346,170){1} wire Q2; //: /sn:0 {0}(337,296)(337,317)(338,317){1} //: {2}(342,317)(367,317)(367,162){3} //: {4}(367,158)(367,119)(529,119)(529,56){5} //: {6}(365,160)(346,160){7} //: {8}(340,319)(340,347)(242,347)(242,378)(261,378){9} wire w5; //: /sn:0 {0}(305,238)(305,165)(314,165){1} wire w9; //: /sn:0 {0}(500,55)(500,108)(288,108)(288,158){1} //: {2}(286,160)(273,160){3} //: {4}(288,162)(288,233)(249,233)(249,255){5} //: {6}(247,257)(232,257)(232,247){7} //: {8}(249,259)(249,305){9} //: {10}(251,307)(274,307)(274,294){11} //: {12}(249,309)(249,319)(229,319)(229,383)(261,383){13} //: enddecls and g8 (.I0(w9), .I1(w16), .I2(w27), .Z(w2)); //: @(279,283) /sn:0 /R:1 /w:[ 11 3 0 1 ] //: joint g4 (w0) @(295, 89) /w:[ 3 4 6 -1 ] //: joint g37 (w11) @(296, 383) /w:[ 1 -1 2 4 ] and g34 (.I0(w8), .I1(w11), .Z(w7)); //: @(320,381) /sn:0 /w:[ 1 0 1 ] or g13 (.I0(w17), .I1(w21), .Z(w6)); //: @(310,297) /sn:0 /R:1 /w:[ 5 1 1 ] ff g3 (.Q(Q3), ._Q(w8), .D(w22), .EN(w0), .CLR(w1), .CK(w15)); //: @(397,165) /sn:0 /w:[ 0 0 1 0 7 7 ] //: comment g51 /dolink:0 /link:"" @(478,172) /sn:0 //: /line:"T d0 q0 d1 q1 d2 q2 d3 q3" //: /line:"0 1 0 0 0 0 0 0 0" //: /line:"1 0 1 1 0 0 0 0 0" //: /line:"2 1 0 1 1 0 0 0 0" //: /line:"3 0 1 0 1 1 0 0 0" //: /line:"4 1 0 0 0 1 1 0 0" //: /line:"5 0 1 1 0 1 1 0 0" //: /line:"6 1 0 1 1 1 1 0 0" //: /line:"7 0 1 0 1 0 1 1 0" //: /line:"8 1 0 0 0 0 0 1 1" //: /line:"9 0 1 1 0 0 0 1 1" //: /line:"10 1 0 1 1 0 0 1 1" //: /line:"11 0 1 0 1 1 0 1 1" //: /line:"12 1 0 0 0 1 1 1 1" //: /line:"13 0 1 1 0 1 1 1 1" //: /line:"14 1 0 1 1 1 1 1 1" //: /line:"15 0 1 0 1 0 1 0 1 " //: /line:"16 1 0 0 0 0 0 0 0 " //: /end ff g2 (.Q(Q2), ._Q(w27), .D(w5), .EN(w0), .CLR(w1), .CK(w15)); //: @(330,165) /sn:0 /w:[ 7 1 1 13 9 9 ] ff g1 (.Q(w9), ._Q(w21), .D(D1), .EN(w0), .CLR(w1), .CK(w15)); //: @(257,165) /sn:0 /w:[ 3 0 0 11 11 11 ] led g16 (.I(w9)); //: @(500,48) /sn:0 /w:[ 0 ] /type:0 and g11 (.I0(w6), .I1(Q2), .Z(w4)); //: @(335,285) /sn:0 /R:1 /w:[ 0 0 1 ] //: joint g10 (w16) @(216, 260) /w:[ 6 8 -1 5 ] //: joint g28 (w1) @(181, 75) /w:[ 2 -1 1 12 ] //: joint g50 (w1) @(325, 75) /w:[ 6 -1 5 8 ] //: joint g32 (w9) @(249, 307) /w:[ 10 9 -1 12 ] //: joint g19 (w16) @(216, 160) /w:[ 10 -1 12 9 ] //: joint g27 (w15) @(330, 206) /w:[ 6 8 5 -1 ] and g38 (.I0(Q3), .I1(w19), .Z(w14)); //: @(346,432) /sn:0 /w:[ 5 0 1 ] //: supply0 g6 (w0) @(326,31) /sn:0 /w:[ 5 ] //: joint g9 (w9) @(249, 257) /w:[ -1 5 6 8 ] or g7 (.I0(w2), .I1(w4), .Z(w5)); //: @(305,248) /sn:0 /R:1 /w:[ 0 0 0 ] xor g53 (.I0(w16), .I1(w9), .Z(D1)); //: @(230,236) /sn:0 /R:1 /w:[ 7 7 1 ] //: joint g31 (w16) @(216, 312) /w:[ 2 4 -1 1 ] //: joint g20 (w9) @(288, 160) /w:[ -1 1 2 4 ] led g15 (.I(w16)); //: @(475,48) /sn:0 /w:[ 11 ] /type:0 //: joint g39 (Q3) @(430, 160) /w:[ 2 -1 1 4 ] //: joint g48 (w0) @(262, 89) /w:[ 7 -1 8 10 ] //: switch g25 (w3) @(-68,237) /sn:0 /w:[ 0 ] /st:0 led g17 (.I(Q3)); //: @(554,49) /sn:0 /w:[ 3 ] /type:0 //: joint g29 (w1) @(252, 75) /w:[ 4 -1 3 10 ] //: comment g52 /dolink:0 /link:"" @(484,437) /sn:0 //: /line:"d0=/Q0" //: /line:"d1= Q0 XOR Q1 = Q0./Q1+/Q0.Q1" //: /line:"d2= Q0.Q1./Q2+Q2.(/Q0+/Q1)" //: /line:"d3= Q0.Q1.Q2.Q3+Q3/(Q0.Q1.Q2)" //: /end //: joint g14 (w17) @(154, 201) /w:[ 1 2 -1 4 ] //: switch g5 (w1) @(69,75) /sn:0 /w:[ 0 ] /st:1 //: frame g47 @(267,234) /sn:0 /wi:101 /ht:103 /tx:"" not g36 (.I(w11), .Z(w19)); //: @(308,435) /sn:0 /w:[ 5 1 ] //: joint g24 (w15) @(186, 206) /w:[ 2 12 -1 1 ] //: switch g21 (w12) @(-68,166) /sn:0 /w:[ 1 ] /st:1 //: frame g41 @(134,193) /sn:0 /wi:319 /ht:281 /tx:"" clock g23 (.Z(w10)); //: @(-18,110) /sn:0 /w:[ 0 ] /omega:100 /phi:0 /duty:50 or g40 (.I0(w7), .I1(w14), .Z(w22)); //: @(405,400) /sn:0 /w:[ 0 0 0 ] //: frame g54 @(203,223) /sn:0 /wi:53 /ht:46 /tx:"" mux g22 (.I0(w12), .I1(w10), .S(w3), .Z(w15)); //: @(62,198) /sn:0 /w:[ 0 1 1 0 ] //: joint g26 (w15) @(257, 206) /w:[ 4 10 3 -1 ] ff g0 (.Q(w16), ._Q(w17), .D(w17), .EN(w0), .CLR(w1), .CK(w15)); //: @(186,165) /sn:0 /w:[ 13 0 3 9 13 13 ] //: joint g35 (Q2) @(367, 160) /w:[ -1 4 6 3 ] //: frame g46 @(190,344) /sn:0 /wi:245 /ht:108 /tx:"" and g12 (.I0(Q2), .I1(w9), .I2(w16), .Z(w11)); //: @(272,383) /sn:0 /w:[ 9 13 0 3 ] led g18 (.I(Q2)); //: @(529,49) /sn:0 /w:[ 5 ] /type:0 //: joint g33 (Q2) @(340, 317) /w:[ 2 -1 1 8 ] //: comment g30 /dolink:0 /link:"" @(-90,257) /sn:0 //: /line:"step/step" //: /end //: joint g49 (w0) @(335, 89) /w:[ 1 -1 2 12 ] endmodule